"""
可变形参(参数):
def 函数名(普通形参,默认形参,*变量名):
  pass
怎么形成的:
多余的位置实参会变成可变形参里面的元素   数据类型是一个元组
# args: 可以为任意变量名,不一定是args
我们定义时形参的顺序:  普通形参,默认形参,可变形参
可变形参:可以给值,也可以不给
字典参数:
在函数定义时使用
def 函数名(**kwargs):
  pass
形成:
    多余的关键字实参,他就变成了字典参数里面的元素
形参的最终顺序: 普通形参,默认形参,可变形参,字典参数
实参的顺序: 位置实参,关键字实参
位置写过,可能会报语法错误
"""
def print_num_1(a,b,c=12,*args):
    print(a)
    print(b)
    print(c)
    print(args)
# print_num(12,34,12,23,12,3,12,c=20)
def print_num_2(a,b,c=12,*args,**kwargs):
    print(a)
    print(b)
    print(c)
    print(kwargs)

print_num_2(a=12,b=12,c=20,d=30,c1=2,e=40)